 |
Anlagen von E-Mails automatisch speichern
Sie bekommen regelmäßig E-Mails mit Anlagen, die Sie manuell in einem bestimmten Ordner speichern. Diesen Vorgang möchten Sie gerne automatisieren.
Das notwendige Vorgehen zeigt ein einfaches Beispiel. Angenommen, Sie erhalten von Mitarbeitern regelmäßig Wochenberichte zugesandt, die Sie automatisch in einem bestimmten Ordner speichern möchten, um sie am Anfang der folgenden Woche zu sichten. Die entsprechenden Mails erkennen Sie am vereinbarten Betreff »Wochenbericht«.
Öffnen Sie Outlook XP und starten Sie mit dem Menübefehl »Extras | Makro | Visual Basic-Editor« den Visual-Basic-Editor. Klicken Sie im Projekt-Explorer nacheinander auf das kleine Pluszeichen vor dem Eintrag »Projekt1« und anschließend auf das vor »Microsoft Outlook Objekte«. Es erscheint der untergeordnete Eintrag »DieseOutlookSitzung«, den Sie per Doppelklick öffnen.
Wählen Sie in der linken Kombinationsbox oberhalb des Eingabebereichs »Application« und in der rechten Kombinationsbox »NewMail« aus. Outlook erzeugt daraufhin einen leeren Prozedurrumpf »Application_NewMail()«, den Sie wie folgt ergänzen: Private Sub Application_NewMail() Const constFolder = „C:\DatenWochenberichte“ Const constSubject = „Wochenbericht“
On Error Resume Next Set objInbox = Application. GetNamespace(„MAPI“).GetDefaultFolder(olFolderInbox) For Each objNewMail In objInbox.Items If objNewMail.UnRead = True Then If objNewMail.Subject = constSubject ThenintAttachments = objNewMail. Attachments.Count If intAttachments > 0 Then For intCounter = 1 To intAttachments objNewMail.Attachments.Item (intCounter).SaveAsFile constFolder & „\“ & objNewMail.Attachments.Item (intCounter).FileName MsgBox objNewMail.Attachments. Item(intCounter).FileName & „ in „ & constFolder & „ gespeichert!“ Next End If End If End If Next objNewMail End Sub Die Variable »constFolder« speichert den Pfad, in dem Sie alle Anhänge einer Mail mit dem als »constSubject« angegebenen Betreff ablegen möchten. Speichern Sie Ihr VBA-Projekt, verlassen Sie den Visual-Basic-Editor, schließen Sie Outlook XP und starten Sie die Anwendung erneut.
Die Prozedur »Application_NewMail()« führt Outlook bei Empfang neuer E-Mails automatisch aus. Sie prüft alle ungelesenen Mails im Ordner »Posteingang« und speichert – vorausgesetzt der Betreff entspricht der in »constSubject« angegebenen Zeichenkette – die enthaltenen Anhänge im Pfad von »constFolder«. Außerdem erhält der Anwender für jede gespeicherte Datei eine Meldung.
|
 |